The present invention relates generally to communication systems and, more particularly, to a double-talk detector for use with an echo canceller.
In long distance telephonic communications, the need for echo cancellation arises from impedance mismatches associated with wire line telephone subscribers and the use of two-wire connections between wire line subscribers and the central telephone offices. Two-wire connections require mixing of transmitted and received telephone signals for exchange between the central telephone office and the wire line subscriber. This mixing results in a portion of a received signal being re-transmitted as an outgoing signal from a receiving or near-end party to a transmitting or far-end party. As a result, the re-transmitted signal may represent a distracting echo in the communications.
While the echo problem described above is referred to as a network echo, another type of echo is acoustic echo. FIG. 1 illustrates a communication system 100 in which acoustic echo can occur. In system 100, a signal x(n) from the far-end party is received and reproduced at a loud speaker 102 of the near-end party. As a result, an acoustic echo signal c(n) can follow an echo path H(n) and be picked up by a near-end microphone 104. As a result, the far-end party may hear the acoustic echo signal c(n) while speaking.
For minimization or elimination of echo of either type occurring in a telecommunications system, there is typically provided an echo canceller. Thus, system 100 includes an automatic echo canceller (AEC) 106 which is coupled to receive the far-end signal x(n) and an echo compensated version e(n) of the near-end signal when a control switch SW1 is closed. Canceller 106 generates an output signal y(n) that is subtracted from a near-end signal d(n) from microphone 104 to yield compensated signal e(n). Thus, when there is no near-end local source signal s(n) being generated, e.g., the near-end party is not speaking, the value of e(n) should be small.
In general, echo canceller 106 comprises an adaptive finite impulse response filter (AFIR). The filter generates a mathematical model of the echo characteristics based on the far-end signal and the echo compensated signal e(n). Generation of the mathematical model includes generation of an adaptive filter weight vector designated W(n). During echo cancellation operation, the AFIR adjusts the weight components of vector W(n) to minimize or eliminate echo. Thus, operation of the filter is typically an iterative process. A more complete explanation of the use of AFIRs for echo cancellation is disclosed in xe2x80x9cAdaptive Filter Theoryxe2x80x9d by S. Haykin, Prentice-Hall International, Inc., 3rd. Edition, ISBN:0133979857, which is incorporated in its entirety herein by reference.
Operation of an adaptive filter for echo cancellation is adversely affected by the occurrence of double-talk. Double-talk occurs when both the near-end party and the far-end party are speaking and where the magnitude of the speech signals of the near-end party is much greater than that of the echo, thereby interfering with the operations of the adaptive filter. As a result, the adaptive filter is unable to accurately respond to the near-end party""s speaking and the value of the filter weight vector W(n) is not adjusted for effective echo cancellation.
In response to this phenomenon due to double-talk, there have been developed various techniques for detecting the occurrence of double-talk, so that the operation of the AFIR can be temporarily suspended when double-talk occurs. To this end, system 100 includes a double-talk detector (DTD) 108 connected to control switch SW1 to isolate canceller 106 from signal e(n) when double-talk occurs.
One type of conventional detector is a power-type double-talk detector such as disclosed in U.S. Pat. No. 4,360,712. Such a detector calculates a power ratio between the near-end and far-end signals and compares the ratio with a threshold value. Double-talk is deemed to occur when the ratio exceeds the threshold value. Another type is a correlation-type double-talk detector such as disclosed in xe2x80x9cA New Double-Talk Detection Algorithm Based on the Orthogonality Theoremxe2x80x9d by Ye et al., IEEE Transactions on Communications, Vol. 39, No. 11, Nov. 1991. Such a detector calculates an average cross-correlation (ACC) of an error signal and the far-end signal, and compares the ACC with a threshold value. Double-talk is deemed to occur if the ACC exceeds the threshold. A further type of detector is a linear prediction coefficient (LPC) detector such as disclosed in U.S. Pat. No. 5,483,594. In such a detector, the forward signal is submitted to a finite-impulse-response linear-prediction filter in order to determine a first residual signal of minimal energy. The return signal is submitted to a finite-impulse-response filter the coefficients of which are the same as those of the linear-prediction filter of the forward signal in order to determine a second residual signal. The ratio of the energies contained in the first and second residual signals is calculated. Then it is determined whether the return signal contains components other than the echo components from the forward signal by comparing the calculated ratio to a detection threshold, to thereby determine whether double talk is occurring.
A drawback of the above-described conventional double-talk detectors is that they utilize algorithms that are computationally intensive and/or are sensitive to noise.
Accordingly, the present invention is directed to a double-talk detector that substantially obviates one or more of the problems due to limitations and disadvantages of the related art.
Additional features and advantages of the invention will be set forth in the description which follows, and in part will be apparent from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention will be realized and attained by the method and apparatus particularly pointed out in the written description and claims hereof as well as the appended drawings.
To achieve these and other advantages and in accordance with the purpose of the invention, as embodied and broadly described, the invention is directed to a double-talk detector for use with an echo canceller having an adaptive filter, the adaptive filter coupled to receive a far-end signal and an error signal which is a difference between a near-end signal and an output signal of the adaptive filter, the adaptive filter adapting a weight vector used for generating the filter output signal to minimize the error signal. The double-talk detector comprises: means for detecting an increase of a squared norm of the adaptive filter weight vector; and means for determining whether the increase of the squared norm exceeds a predetermined value corresponding to a double-talk condition.
Also in accordance with the present invention there is provided an echo canceller for canceling from a near-end signal an echo received in a far-end signal, comprising: an adaptive filter coupled to receive the far-end signal and an error signal which is a difference between the near-end signal and an output signal of the adaptive filter, the adaptive filter including means for adapting a weight vector, used for generating the filter output signal, to minimize the error signal; and a double-talk detector coupled to receive the weight vector and detect an increase of a squared norm of the weight vector, the detector including means for determining whether the increase exceeds a predetermined value corresponding to a double-talk condition.
Further in accordance with the present invention there is provided a method for detecting double-talk in an echo canceller for canceling from a near-end signal an echo received in a far-end signal, comprising: receiving the far-end signal and an error signal which is a difference between the near-end signal and an adaptive filter output signal; adapting an adaptive filter weight vector to generate the output signal with a value to minimize the error signal; detecting an increase of a squared norm of the weight vector; and determining that a double-talk condition exists when the rate of increase exceeds a predetermined value.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the invention as claimed.
The accompanying drawings are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate an embodiment of the invention, and together with the description serve to explain the principles of the invention.